#ifndef WIDGET_H
#define WIDGET_H

#include <QWidget>
#include <QPaintEvent>
#include <QPainter>
#include <QPen>
#include <QListWidget>
#include <QTimer>
#include <sys/types.h>
#include <dirent.h>
#include <QMessageBox>
#include <QDebug>
#include <stdio.h>
#include <unistd.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <string.h>
#include <QString>
#include <pthread.h>
#include <QSlider>
#include <QMouseEvent>
#include <stdlib.h>
#include <unistd.h>
#include <map>
#include <utility>

namespace Ui {
class Widget;
}

class Widget : public QWidget
{
    Q_OBJECT

public:
    explicit Widget(QWidget *parent = 0);
    virtual void paintEvent(QPaintEvent *event);
    int tag;//暂停/取消暂停
    int mypid;
    int flag;//静音开关
    int index;//歌曲索引
    int maxindex;//歌曲索引最大值
    int ylvalue;//记录音量
    int timest;
    int timebef;
    char* list;
    QString mygqname;
    void listfun();//初始化歌曲列表
    void bfyyfun(char mycontrol[]);//遥控器
    void qiefun();//切换歌曲
    void getTimeLen();
    void wTime();
    void timefun();
    void getgc(char *,int );
    void gcshow();
    void showgc(int);
    ~Widget();

private slots:
    void on_listWidget_itemClicked(QListWidgetItem *item);

    void on_bfbtn_clicked();

    void on_lbtn_clicked();

    void on_rbtn_clicked();

    void on_ybtn_clicked();

    void on_horizontalSlider_2_valueChanged(int value);
    void on_horizontalSlider_sliderReleased();

    void on_listWidget_2_indexesMoved(const QModelIndexList &indexes);

public slots:
    void setTime();
    void getTimeLen(QString);
    void onStudyValueChanged(int num);
signals:
    void getTLength(QString);
private:
    Ui::Widget *ui;
    QTimer * timer;
};

#endif // WIDGET_H
